<?php
/**
 * グローバルナビのセッション管理
 */
class Apm_Session_GlobalNavi {

	const NAME_SPACE = 'GlobalNavi';
	
	/**
	 * セッション取得（グローバルナビ）
	 * @return Zend_Session_Namespace
	 */
	private function getSession()
	{
        return new Zend_Session_Namespace(self::NAME_SPACE);
	}

	/**
	 * セッションクリア
	 */
	public static function clear()
	{
		Zend_Session::namespaceUnset(self::NAME_SPACE);
	}

	/**
	 * 検索区分取得
	 * @return 検索区分
	 */
	public static function getSearchType()
	{
		return self::getSession()->SearchType;
	}

	/**
	 * 検索区分設定
	 * @param 検索区分
	 */
	public static function setSearchType($value)
	{
		self::getSession()->SearchType = $value;
	}
	
	/**
	 * 都道府県CD配列を取得
	 * @return 都道府県CD配列
	 */
	public static function getPrefCdList()
	{
		$param = self::getSession()->PrefCdList;
		if (is_array($param) == false) $param = array();
		return array_unique($param);
	}

	/**
	 * 都道府県CD配列を設定
	 * @param 都道府県CD配列
	 */
	public static function setPrefCdList($values)
	{
		self::getSession()->PrefCdList = $values;
	}

	/**
	 * 市区町村CD配列を取得
	 * @return 市区町村CD配列
	 */
	public static function getCityCdList()
	{
		$param = self::getSession()->CityCdList;
		if (is_array($param) == false) $param = array();
		return array_unique($param);
	}

	/**
	 * 市区町村CD配列を設定
	 * @param 市区町村CD配列
	 */
	public static function setCityCdList($values)
	{
		self::getSession()->CityCdList = $values;
	}

	/**
	 * 町CD配列を取得
	 * @return 町CD配列
	 */
	public static function getTownCdList()
	{
		$param = self::getSession()->TownCdList;
		if (is_array($param) == false) $param = array();
		return array_unique($param);
	}

	/**
	 * 町CD配列を設定
	 * @param 町CD配列
	 */
	public static function setTownCdList($values)
	{
		self::getSession()->TownCdList = $values;
	}

	/**
	 * 沿線CD配列を取得
	 * @return 沿線CD配列
	 */
	public static function getRailCdList()
	{
		$param = self::getSession()->RailCdList;
		if (is_array($param) == false) $param = array();
		return array_unique($param);
	}

	/**
	 * 沿線CD配列を設定
	 * @param 沿線CD配列
	 */
	public static function setRailCdList($values)
	{
		self::getSession()->RailCdList = $values;
	}

	/**
	 * 駅CD配列を取得
	 * @return 駅CD配列
	 */
	public static function getStCdList()
	{
		$param = self::getSession()->StCdList;
		if (is_array($param) == false) $param = array();
		return array_unique($param);
	}

	/**
	 * 駅CD配列を設定
	 * @param 駅CD配列
	 */
	public static function setStCdList($values)
	{
		self::getSession()->StCdList = $values;
	}
	
	/**
	 * 基本条件配列を取得
	 * @return 基本条件配列
	 */
	public static function getBasicList()
	{
		$param = self::getSession()->BasicList;
		if (is_array($param) == false) $param = array();
		return $param;
	}
	/**
	 * 基本条件配列を設定
	 * @param 基本条件配列
	 */
	public static function setBasicList($values)
	{
		self::getSession()->BasicList = $values;
	}
	/**
	 * 都道府県CD状態を取得
	 * @return 都道府県CD状態
	 */
	public static function getPrefCdCondition()
	{
		return self::getSession()->PrefCdCondition;
	}

	/**
	 * 都道府県CD状態を設定
	 * @param 都道府県CD状態
	 */
	public static function setPrefCdCondition($values)
	{
		self::getSession()->PrefCdCondition = $values;
	}
	/**
	 * 最初に選択した都道府県CDを取得
	 * @return 都道府県CD状態
	 */
	public static function getFirstCheck()
	{
		return self::getSession()->FirstCheck;
	}

	/**
	 * 都道府県CD状態を設定
	 * @param 都道府県CD状態
	 */
	public static function setFirstCheck($values)
	{
		self::getSession()->FirstCheck = $values;
	}
}
?>
